1. Field of the Invention
This invention relates to modifying a geometry-only lofted surface, and more specifically to deriving, and the directly manipulating the 2D sections of such a lofted surface in an intuitive manner.
2. Prior Art
Objects in a CAD system can be represented in a parameter based way or in a geometry based way. In a parameter based representation, the object is modeled as an object along with a set of features and history that define the object. In a geometry based way the object is simply represented as a set of geometric data.
In Modern CAD systems geometry can be created in three basic ways: from manipulation of 2D sections, creation of edge features by modifications to the sharp boundaries between faces (e.g. a fillet), and combining and manipulating solid primitives using a set of Boolean operations. One method of creating 3D geometry from 2D sections is lofting. A 3D loft is created by generating a surface as it passes through multiple 2D sections. Alternatively such surface can be called a “blended surface,” or “blend.”
During the design, engineering, and manufacturing of parts, engineers often have to modify a part with a lofted surface once it has been created in three-dimensional modeling software. For example, a lofted surface might need to be changed slightly for aesthetic reasons, or a cylindrical shaft may need to have its center narrowed to fit amongst other parts in an assembly. In existing three-dimensional parametric modeling system modeling systems a lofted surface can only be modified within the same system. Further, even within those systems, once users subtract from a lofted part so that only a portion of the loft remains, users are unable to modify the loft in the context of their subtractions.
Another limitation is the inability to change an unlofted surface into a lofted surface. Because a lofted surface is created as a specific, recipe-based feature, users have to find the feature in the history, delete it, recreate it as a lofted part, and ensure that later dependencies are maintained. This is a time consuming and error-prone process that requires the re-calculation of all features within the part; and, more often than not, requires rebuilding multiple features in the part.
When editing a previously created lofted surface in a parametric system, the process requires step-by-step creation via curves in space, create the blend, etc. Then to modify the blend/loft, you have to roll back later changes, make the change, and then go back to the current step. This is a consequence of parametric systems having added many history features on top of the actual geometry modeling functionality. These systems have interwoven these features into the software so that making changes requires a lot of effort and additional steps to maintain the information in the step-by-step history. Specifically, they require that you edit the particular historical step that parameterized the object instead of changing the object itself. This method requires that the user modify a feature of an object only when the object is in the same state that it was in when the feature was created.
To create a simple loft in a parametric modeling system, the user creates a “feature recipe.” First, the user must create at least three planes, defining that there is a certain, equal number of units between each plane. The user selects these planes to begin the process of creating a lofted surface. The user sketches on each of the three planes to create the 2D sections that will be used to generate the loft. The user also defines relationships between the sketches on one plane and the sketches on another plane (such as to offset the sketch on the first plane by 2 units from the sketch on the second plane, and ensure that the sketch on the third plane is the same size as the sketch on the first plane).
Once the sketches have been created, the user indicates that they want to create a loft between the sketches on the three planes, and the loft is generated for them. To create the loft, the user must specify the start point, the type of loft (parallel, in this case), and any other constraints on the loft. The permanently-stored “feature recipe” for the loft now consists of seven features (three planes, three sketches, and one loft) and the constraints and relationships on each feature.
FIG. 19 details how lofted surfaces are modified in the prior art, and shows the difficulty in modifying a lofted surface having a history and feature and recipe. At step 1902, the user select a set of faces of the lofted object. At step 1904, the system decides if the lofted object is a spline or analytic object. For a lofted object defined as a spline, at step 1906 the system determines the dominant direction from a surface representation. Similarly, at step 1908, for an analytic surface, the system determines the dominant direction of the lofted object by face juxtaposition. Next, at step 1910, the parametric curves in u-v space for the lofted surface are created.
If the user edits or recreates a feature of the recipe that was used to create the lofted surface, then at step 1912 all the features that contributed to the recipe must be regenerated, including all the features that followed the recipe. The user may find that this regeneration has failed, and therefore he must analyze each step of the feature recipe to see what caused the failure. During this analysis, the user may realize that the a sketch he modified is constrained by another sketch on a different plane. After a constraint like this is edited, the loft can be regenerated. As another example, if the user wants to slightly rotate the one of the planes originally created at step 1902, the regeneration will also fail. The user may find that the loft was created as a parallel loft, and therefore to rotate one of the planes of the lofts, the entire lofted object must be deleted, and regenerated as a rotational loft.
At step 1914, the user can edit the mathematical u-v curves directly, and these changes can be regenerated into a new lofted. Similarly, at step 1916, if a user warps the face of the loft, the response of the system is to create tessellated representation of all the faces of the loft.
Methods used to overcome these problems parametric modeling systems are not viable for engineering and manufacturing applications. One method of modifying a lofted surface without relying on feature recipes and all the associate constraints, is the use of deformation tools. Deformation tools deconstruct models into constituent triangles and points, losing the 2D sections that define the precise, dimensioned measurements necessary for the accurate engineering and manufacturing of parts. The vertices and orientation of each of the constituent triangles can then be modified as desired to change to overall geometry of the object. After modifications to the triangles however, the original lofted surface cannot be recreated. Similarly, when modifying lofts with morph tools, as Maya, produced by Alias Systems Corporation, and 3DS Max, produced by Autodesk, the original loft surface cannot be recreated. Modifying lofted surfaces with morph tools also causes them to lose their precise dimensioned geometry and measurements necessary for accurate engineering and manufacturing. Therefore, modifications made using a morph tools are more difficult to manufacture, and cannot be successfully imported back into the original modeling software for further modification.
What is needed is an improved method of modifying a lofted surface that allows users to modify any lofted surface created in any three-dimensional modeling software in a simple and efficient manner, while seeing the lofted geometry in the context of any user-created geometry. What is also needed is a way to change any existing unlofted surface into a lofted surface.